using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Input;
using System.Collections;

namespace Ricciolo.PaperBoy.Feeds
{
    public static class FeedsCommands
    {
        public static RoutedUICommand Download;
        public static RoutedUICommand MarkAsRead;
        public static RoutedUICommand MarkAsUnread;
        public static RoutedUICommand MarkAllAsRead;
        public static RoutedUICommand Delete;
        public static RoutedUICommand OpenItemInFeedTab;
        public static RoutedUICommand OpenItemInNewTab;
        public static RoutedUICommand OpenItemInNewWindow;
        public static RoutedUICommand ViewComments;
        public static RoutedUICommand DeleteItem;
        public static RoutedUICommand SyncronizeAll;
        public static RoutedUICommand ThemesAndSkins;
        public static RoutedUICommand Preferences;
        public static RoutedUICommand CopyItemLocation;
        public static RoutedUICommand CopyLinkLocation;
        public static RoutedUICommand CopyCommentsLocation;
        public static RoutedUICommand About;
        public static RoutedUICommand GotoNextUnreadItem;

        static FeedsCommands()
        {
            InputGestureCollection l;
            l = new InputGestureCollection();
            l.Add(new KeyGesture(Key.F5));
            Download = new RoutedUICommand("Refresh...", "Refresh", typeof(FeedsCommands), l);

            l = new InputGestureCollection();
            l.Add(new KeyGesture(Key.R, ModifierKeys.Control));
            MarkAsRead = new RoutedUICommand("Mark as read", "MarkAsRead", typeof(FeedsCommands), l);

            l = new InputGestureCollection();
            l.Add(new KeyGesture(Key.R, ModifierKeys.Control | ModifierKeys.Shift));
            MarkAllAsRead = new RoutedUICommand("Mark all as read", "MarkAllAsRead", typeof(FeedsCommands), l);

            MarkAsUnread = new RoutedUICommand("Mark as unread", "MarkAsUnread", typeof(FeedsCommands));

            Delete = new RoutedUICommand("Delete", "Delete", typeof(FeedsCommands));
            DeleteItem = new RoutedUICommand("DeleteItem", "DeleteItem", typeof(FeedsCommands));

            l = new InputGestureCollection();
            l.Add(new KeyGesture(Key.F5, ModifierKeys.Control));
            SyncronizeAll = new RoutedUICommand("Update all", "SyncronizeAll", typeof(FeedsCommands), l);

            ThemesAndSkins = new RoutedUICommand("Themes and skins...", "ThemesAndSkins", typeof(FeedsCommands));
            Preferences = new RoutedUICommand("Preferences...", "Preferences", typeof(FeedsCommands));
            CopyItemLocation = new RoutedUICommand("Copy item location", "CopyItemLocation", typeof(FeedsCommands));
            CopyLinkLocation = new RoutedUICommand("Copy link location", "CopyLinkLocation", typeof(FeedsCommands));
            CopyCommentsLocation = new RoutedUICommand("Copy comments location", "CopyCommentsLocation", typeof(FeedsCommands));
            OpenItemInFeedTab = new RoutedUICommand("Into feed tab", "Into feed tab", typeof(FeedsCommands));
            OpenItemInNewTab = new RoutedUICommand("Into a new tab", "Into a new ta", typeof(FeedsCommands));
            OpenItemInNewWindow = new RoutedUICommand("Into a new _window", "Into a new window", typeof(FeedsCommands));
            ViewComments = new RoutedUICommand("View comments", "ViewComments", typeof(FeedsCommands));
            About = new RoutedUICommand("About...", "About", typeof(FeedsCommands));
            GotoNextUnreadItem = new RoutedUICommand("Next unread item", "GotoNextUnreadItem", typeof(FeedsCommands));
        }
    }
}
